starstarstarstarstar_half
Functional programming is becoming increasingly widespread in industry. This trend is driven by the adoption of Scala as the main programming language for many applications. Scala fuses functional and object-oriented programming in a practical package. It interoperates seamlessly with both Java and Javascript. Scala is the implementation language of many important frameworks, including Apache Spark, Kafka, and Akka. It provides the core infrastructure for sites such as Twitter, Tumblr and also Coursera. In this course you will discover the elements of the functional programming style and learn how to apply them usefully in your daily programming tasks. You will also develop a solid foundation for reasoning about functional programs, by touching upon proofs of invariants and the tracing of execution symbolically. The course is hands on; most units introduce short programs that serve as illustrations of important concepts and invite you to play with them, modifying and improving them. The course is complemented by a series programming projects as homework assignments. Recommended background: You should have at least one year programming experience. Proficiency with Java or C# is ideal, but experience with other languages such as C/C++, Python, Javascript or Ruby is also sufficient. You should have some familiarity using the command line.
    starstarstarstarstar_border
    This course is for anyone who would like to apply their technical skills to creative work ranging from video games to art installations to interactive music, and also for artists who would like to use programming in their artistic practice. This course will teach you how to develop and apply programming skills to creative work. This is an important skill within the development of creative mobile applications, digital music and video games. It will teach the technical skills needed to write software that make use of images, audio and graphics, and will concentrate on the application of these skills to creative projects. Additional resources will be provided for students with no programming background. At the end of this course, you will be able to: * Write creative, audiovisual programs in the Processing environment that run on desktop and mobile * Programatically manipulate sound in creative ways * Display images and image sequences * Generate interactive, algorithmic graphics * Work with a 2D physics engine to create a basic game
      starstarstarstarstar_half
      This is yet one more introductory course on quantum computing. Here I concentrate more on how the mathematical model of quantum computing grows out from physics and experiment, while omitting most of the formulas (when possible) and rigorous proofs. On the first week I try to explain in simple language (I hope) where the computational power of a quantum computer comes from, and why it is so hard to implement it. To understand the materials of this week you don't need math above the school level. Second and third weeks are about the mathematical model of quantum computing, and how it is justified experimentally. Some more math is required here. I introduce the notion of a linear vector space, discuss some simple differential equations and use complex numbers. The forth week is dedicated to the mathematical language of quantum mechanics. You might need this if you want to dig deeper into subject, however I touch only the tip of the iceberg here. On the week 5 I finally introduce some simple quantum algorithms for cryptography and teleportation.
        starstarstarstarstar_half
        This course teaches learners how to write a program in the C++ language, including how to set up a development environment for writing and debugging C++ code and how to implement data structures as C++ classes. It is the first course in the Accelerated CS Fundamentals specialization, and subsequent courses in this specialization will be using C++ as the language for implementing the data structures covered in class.
          starstarstarstarstar_half
          If you are a software developer who wants to build scalable AI-powered algorithms, you need to understand how to use the tools to build them. This course is part of the upcoming Machine Learning in Tensorflow Specialization and will teach you best practices for using TensorFlow, a popular open-source framework for machine learning. The Machine Learning course and Deep Learning Specialization from Andrew Ng teach the most important and foundational principles of Machine Learning and Deep Learning. This new deeplearning.ai TensorFlow Specialization teaches you how to use TensorFlow to implement those principles so that you can start building and applying scalable models to real-world problems. To develop a deeper understanding of how neural networks work, we recommend that you take the Deep Learning Specialization.
            starstarstarstarstar_half
            Welcome to Lighting, Reflection, and Post-Processing Effects, the second course in the Unity Certified 3D Artist Specialization from Unity Technologies. The courses in this series will help you prepare for the Unity Certified 3D Artist exam, the professional certification for entry- to mid-level Unity artists. 3D artists are critical to the Unity development pipeline. They are a bridge between the programmers writing the application code and the designers or art directors who define the application’s aesthetics and style. In these courses, you will be challenged to complete realistic art implementation tasks in Unity that are aligned to the topics covered on the exam. In this second course, you will continue work on the Kitchen Configurator application - an app that lets users view a realistic rendering of a kitchen and swap out objects and materials to customize the design. The scene will really start to come to life as you add lighting effects including ambient lighting from a custom skybox, simulated sunlight, interior lights, and realistic reflections. Finally, you’ll use Unity’s Post-Processing Stack to add even more polish to the rendered scene. By the end of the course, you’ll have a scene ready for the next stage: adding interactions through scripts. This is an intermediate course, intended for people who are ready for their first paying roles as Unity 3D artists, or enthusiasts who would like to verify their skills against a professional standard. To succeed, you should have at least 1-2 years of experience implementing 3D art in Unity. You should be proficient at importing assets into Unity from Digital Content Creation (DCC) tools, prototyping scenes, working with lighting, and adding particles and effects. You should also have a basic understanding of 2D asset management, animation, and working with scripts. You should have experience in the full product development lifecycle, and understand multi-platform development, including for XR (AR and VR) platforms.
              starstarstarstarstar_half
              In this course you will learn about audio signal processing methodologies that are specific for music and of use in real applications. We focus on the spectral processing techniques of relevance for the description and transformation of sounds, developing the basic theoretical and practical knowledge with which to analyze, synthesize, transform and describe audio signals in the context of music applications. The course is based on open software and content. The demonstrations and programming exercises are done using Python under Ubuntu, and the references and materials for the course come from open online repositories. We are also distributing with open licenses the software and materials developed for the course.
                starstarstarstarstar_border
                Whether you are a software developer, architect, project manager or just someone who codes for fun; knowing what to write is just as hard as knowing how to write it. ' Software requirements gathering ' is the process of capturing the objectives, goals and wishes of the customer upfront and early-on in the Software Development Life Cycle (SDLC). This course is accompanied by several templates and document files, that you can use as a guideline during your next requirements gathering project. There is a feasibility study template, a software specification template, a terminology guide and a couple more. This course will get you ' asking the right questions ' early in the process, saving you time, money and effort. You will learn how to ' manage the requirements process ' from start to finish. How to differentiate between ' Functional and Non-functional requirements '. How to ' capture and record requirements '. Plus, you will get an insight to how one system is used throughout an organization. This course will guide you through the entire range of ' Scoping Documents ', ' Technical Specifications ', ' Feasibility Studies ' and ' Requirements Gathering '. Your time is precious and that matters to me, this course has been arranged into small lectures that you can consume when you have a spare few minutes. They follow-on from each other, making the entire course watchable in one sitting. you can be sure that the project you embark on is the same as the project you deliver. On time and on budget. Capturing Software Requirements, Meeting Deliverables, Exceeding Expectations and Documenting the whole process can take years to learn, this stuff is not taught in colleges, it is learned in the trenches. So save yourself time, get the insider information on the topics that matter. By the end of the course, you will have amassed a large number of key takeaways and several useful template files that together will take your software development skills to the next level. This course is for life, meaning you can learn whenever you have the time. You have access to the discussions area, where I will personally answer any questions you have on this course. This course is also backed by a 30 day money back guarantee. If you need a deeper understanding of the software development life cycle. Are about to begin work on a new software project or embark on a prospective customer collaboration? this course will guide you through the process. I look forwards to seeing you on the inside. Kind Regards, Robin.
                  starstarstarstarstar_half
                  This course will show how one can treat the Internet as a source of data. We will scrape, parse, and read web data as well as access data using web APIs. We will work with HTML, XML, and JSON data formats in Python. This course will cover Chapters 11-13 of the textbook “Python for Everybody”. To succeed in this course, you should be familiar with the material covered in Chapters 1-10 of the textbook and the first two courses in this specialization. These topics include variables and expressions, conditional execution (loops, branching, and try/except), functions, Python data structures (strings, lists, dictionaries, and tuples), and manipulating files. This course covers Python 3.
                    starstarstarstarstar_border
                    This course provides an introduction to programming and the Python language. Students are introduced to core programming concepts like data structures, conditionals, loops, variables, and functions. This course includes an overview of the various tools available for writing and running Python, and gets students coding quickly. It also provides hands-on coding exercises using commonly used data structures, writing custom functions, and reading and writing to files. This course may be more robust than some other introductory python courses, as it delves deeper into certain essential programming topics.